(6)マイクロソフト Windows Messenger に対応するルータの条件
Windows Messenger を使用すると、インスタント メッセージング によるコンタクト、音声、ビデオ、アプリケーション共有、データ共有、
ならびにリモート アシスタンス機能によるコミュニケーションが可能になります。
Windows Messenger は機能ごとに異なる TCP/UDP ポートを使用します。
メッセージによるチャットはポート 80 番を使用するため、Web を閲覧できる環境であれば実行できますが、
他の機能は以下のポート番号を使用するため、ファイアウォールで制限していたり、UPnP 非対応のルータを使用している環境では
正しく実行できないことがあります。
機能 ポート
ボイスチャット、ビデオチャット UDP:5004-65535
ファイル転送 TCP:6891-6900
ホワイトボード、アプリケーション共有 TCP:1503
リモートアシスタンス
TCP:3389
ルータのNAT機能による問題点
TCP/IPを使ったLANを構築した場合、LANの内部だけで自由に割り当て可能なプライベートアドレスを利用することができます。
しかし、プライベートアドレスのままではインターネットに接続できないため、NAT/IPマスカレードを利用して、そのつどインターネット上で
識別可能なIPアドレス(グローバルアドレス)を割り当てるようにします。
この結果、1つのグローバルアドレスを複数の端末で共有することができますが、LANの外側から内側のマシンに接続しようとすると、困ったことが起きます。
LAN内から始まったセッションならば、ルータは内外両方の配送先を把握することができるのですが、突然外からルータ宛てに接続要求が来ても、
それをどのマシンに送ればいいのかわかりません。
NATは、セキュリティ上はとても都合の良い仕様ですが、このために、相手からの接続が発生するアプリケーションは、ことごとく動作しなくなってしまいます。
Windows Messengerが機能しないのも、このNATルータの仕様に起因しています。
ルータによっては、外部からの接続を受け入れられるように、あらかじめ特定のポートに対するパケットを特定のマシンに配送するように設定できる機能
(ポートフォワーディング)や、配送先が確定できないパケットを全て特定のマシンに配送する機能(DMZ: DeMilitarized Zone)をサポートしています。
しかし、Windows Messengerの場合には、これら機能では対処することができません。
この理由は、通常のTCP/IPパケットが、付属するヘッダ部分にのみ送信元のIPアドレスや宛先IPアドレスなどの送信情報を記述し送り出すのに対し、
Windows Messnserに利用されているプロトコル(SIP)では、その他にもうひとつ、ヘッダ部分だけでなく、パケットのデータ部分にも送信元のIPアドレスを記述し、
送り出すため、内側に置かれたマシンが、外部からの接続に使う本当のアドレスを相手に通知できないことが原因です。
ソリューション (UPnP 対応 ルータの使用)
ユニバーサル プラグ アンド プレイ (UPnP) 対応のファイアウォールやブロードバンドルータを通信者間で使用している場合、Windows Messenger の新機能はすべて意図したとおりに動作します。
UPnP対応のブロードバンドルータは、送信元からUPnPパケットを受け取ると、ヘッダ部分とデータ部分のプライベートIPアドレスをグローバルIPアドレスに書き換えます。
これにより、UPnPパケットを受信した相手のコンピュータも、返信先としてパケットのデータ部分に書き込まれたグローバルIPアドレスを得ることができ、正しい返信パケットを送ることができます。
UPnPの大きな特徴として、UPnP対応のブロードバンドルータは、Windows Messenger
を使う場合、特別な設定を必要としないことにあります。
UPnP対応ブロードバンドルータは、UPnPプロトコルに含まれる機器設定の情報を参照して、自動的にWindows Messenger が使用するポートの開放などを行います。
そのため、「UPnPを使う」という設定だけが施されていれば、ポートフォワーディングなどの面倒な設定を行う必要はありません。
また、 Windows XPではインターネット接続ファイアウォール技術で、UPnP をサポートしています 。
UPnP 非対応のファイアウォール
一般に、ファイアウォール経由で双方向の オーディオおよびビデオ をサポートするには、5004
から 65535 間の UDP ポートすべてを開放し、SIP (セッション開始プロトコル)
とRTP (リアルタイム転送プロトコル) がファイアウォールを通過できるようにしておく必要があります。
また以下のポートを開放します。
ファイル転送:TCP: 6891 (6891 から 6900 までのポートを開放すると 10 のファイル転送を同時に処理できます)
アプリケーションとホワイトボードの共有:TCP: 1503
リモート アシスタンス:TCP: 3389
問題があると思われる場合は、ファイアウォール メーカーに問い合わせると共に配布されたマニュアルを読み、UPnP
をサポートするオプションの有無、またファイアウォール機能を設定する方法を確認します。
Home Page